/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package picstore.web.fornecedores;

import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;


/**
 *
 * @author erica
 */
public class FornecedoresHirbernateDAO implements FornecedoresDAO {

    private Session session;
    
        //Criação da sessão do Hibernate para mapeamento
    public void setSession(Session session){
        this.session = session;
    }

    @Override
    public void salvar(Fornecedores fornecedor) {
        this.session.save(fornecedor);
    }

    @Override
    public void atualizar(Fornecedores fornecedor) {
        this.session.update(fornecedor);
    }

    @Override
    public void excluir(Fornecedores fornecedor) {
      this.session.delete(fornecedor);
    }

    @Override
    public Fornecedores carregar(Integer codigo) {
         return (Fornecedores) this.session.get(Fornecedores.class, codigo);
    }

    @Override
    public Fornecedores buscarPorNome(String nomeFornecedor) {
        String hql = "select u from Forecedores u where u.fn_nome = :fn_nome";
        Query consulta= this.session.createQuery(hql);
        consulta.setString("fn_nome",nomeFornecedor);
        return (Fornecedores) consulta.uniqueResult();    
    }

    @Override
    public List<Fornecedores> listar() {
          return this.session.createCriteria(Fornecedores.class).list();
    }
    
}
